約 2,010,442 件
https://w.atwiki.jp/scclassdoc/pages/26.html
アセンブリと DLL の名前 アセンブリとは、マネージ コード プログラムの開発単位を意味している。 アセンブリは複数の DLL に分割することもできるが、通常、アセンブリは DLL と一対一で対応させる。 このセクションでは、アセンブリと DLL を一つのものとして、その命名ガイドラインを説明する。 ✓ アセンブリと DLL の名前には、大きな機能のまとまりを意味する言葉を選択しよう。 たとえば、System.Data などとする。 ✓ アセンブリと DLL の名前は、必ずしも名前空間に対応させる必要はない。しかし、名前空間をベースにした名前を付けるのは合理的だ。 経験則に従えば、アセンブリに含まれる名前空間の共通のプレフィックス部分をアセンブリと DLL の名前とするのが良いようだ。 たとえば、名前空間 MyCompany.MyTechnology.FirstFeature と MyCompany.MyTechnology.SecondFeature をもつアセンブリは MyCompany.MyTechnology.dll と名付けよう。 ✓ DLL の名前を次のパターンに従って決めることを検討しよう。 会社名.コンポーネント名.dll 次の例にはピリオドで区切られた 1つ以上の句が DLL の名前に含まれている。 Softcube.Utility.dll。
https://w.atwiki.jp/winevst/
Mac OS-X上のwine上でWINDOWS用VST Plug-inを動かす@wikiへようこそ Windows用のFree VST Plug-inがOS-Xで使えればと思い、色々実験してきた結果をまとめるつもりのwikiです。 流れ的には、下記の物をインストールして適切に設定すれば、Windows用VST Plug-inが最低限、動くハズです。 なお、各ソフトのインストールとか、細かい設定は、追々追加していく予定です。 ※あくまでも、Windows用VST Plug-inが実行できる環境を作ることが出来るのであって、実用に耐えうる実行環境が構築出来るわけではありません。 Mac OS-X上でWINDOWS用VSTを動かす為に必要な物 X11(Mac OS-X) wineを動かすために絶対必要 OSのインストールディスクよりインストールして下さい。 Xquartz(Mac OS-X) X11の修正版、OS-XのX11のバグフィックス版 バグ、セキュリティが気になる方はコチラを使用してください。 http //xquartz.macosforge.org/trac/wiki Darwine(Mac OS-X) wineのOS-X版Windows用VSTHostを動かす為に必要 最新版はDarwine-x86-1.2.2.dmgです。 同じ作者のWineBottlerもVSTHostをwineでラップして、 1つのアプリとして使えるので便利ですが、 Font関連の修正方法が良く判らないので、 たちまち、Darwineを使って説明します。 http //winebottler.kronenberg.org/wine/ Midipipe(Mac OS-X) VSTHostへMidiデータを送る為に必要 仮想Midiデバイスアプリです。 http //web.mac.com/nicowald/SubtleSoft/MidiPipe.html soundflower(Mac OS-X) VSTHostから出る音をDAW等へ送ります。 http //cycling74.com/products/soundflower/ VSTHost(Windows) Windows VST Plug-in Hostアプリです。 Windows用VST Plug-in(dll形式のVST)を動かすのに必要です。 http //www.hermannseib.com/english/vsthost.htm 各種VST Plug-in(Windows用 ※dll形式が望ましい) exe形式のVST Plug-inも動かないこともないですが、 VSTHostごと落ちる確率が上がるのでdll形式の方が無難です。 必要に応じて、Mac OS-X用DAW、Midiアプリケーションがあると便利です。
https://w.atwiki.jp/sonyvegas/pages/28.html
VST・DirectXプラグイン All About:VSTプラグインって何? VST LINK (VSTプラグインのデータベースサイト) 使えるフリーソフト (VSTプラグインのレビューサイト) ※現在情報がありません。 おすすめのプラグインがあれば記入をお願いいたします。
https://w.atwiki.jp/otoya/pages/36.html
おすすめVST(フリー) おすすめのインストゥルメンタル/エフェクターを羅列するページ。五十音順。 多くなったら二つに分けます。 インストゥルメンタル サンプラー Independence Free yellow tools フリーサンプラーの代表。約2GBのサンプルから豊富な音を出すことができる。登録が面倒だがやる価値はある。ライブラリはここから8つ全部DLしなければならない。 アコギ素敵ですね@村瀬 ギター Super Riff Guitar Bass Super Riff エレキギター&ベースリアルなギターといえばどうかわからないがとりあえずギターっぽい音を鳴らしたいならこれ。ミュート奏法も使えるので割と便利。アンプやエフェクトかけるともっといいかも。ギターを打ち込みでやるならこれ@村瀬 エフェクター リミッタ TLs Pocket Limitter Tin Brooke Tales フリーのリミッター代表。とりあえずこれを挿しておけば音割れすることはない。何気にマキシマイザーとしても利用可能の優れもの。そしてすごく軽い。落としておいて損はしない@やまと George Yohng s W1 Limiter VST GeorgeYohng's フリーのリミッター。Threshold、Ceiling、Releaseの3つだけのシンプルなリミッター。allaboutで紹介されたように音を破綻させにくいらしい。GUIはないせいか軽い。Threshold動かすだけでいいから簡単@村瀬 A.O.M. Invisible Limiter A.O.M. リミッタ。音を変えないことをメインに音圧を上げる透明系リミッタ。低音には弱いらしい。追記:DAWによってはレイテンシが発生するとのこと。W1 Limiterと使い分けてます@村瀬 EQ LinearPhaseGraphicEQ slim slow slider グラフィックイコライザー。12/24dBの切り替えができ、効きがよい。位相の回転による歪が生じないためクリアな音質が保てる。個人的におすすめ@やまと自分も使ってます@村瀬 スペクトラムアナライザ Blue Cat s FreqAnalyst Blue Cat Audio フリーのスペクトラムアナライザ。波形の周波数特性を見る。フリーの割には高機能だがその分重い。@なつめやし Spectrum Analyzer Seven Phases フリーのスペクトラムアナライザ。上のBlue Cat sのアナライザより軽いので低スペックでも余裕。自由に画面サイズ変えれるのがVST画面複数見ながら使う時に便利。めっちゃシンプル@白銀 MultiInspectorFree VertexDSP スペクトラムアナライザシンプルさが取り柄。複数トラックに挿してひとつの画面で比較することができる取り合えず見やすい@村瀬 リバーブ Mo Verb cyberworm リバーブ。パラメータが多いように見えるがプリセットも多いので使いやすい。かなり細かいパラメータも弄ることができる。そしてとっても軽い@村瀬 エフェクト集 MeldaProduction VST effects MeldaProduction フリーのプラグインエフェクト集。各自単体で紹介されてるが何故かセットでインストされる。とりあえず動作が軽くて一通りそろうので便利。コンプとEQは結構お世話になってます@白銀 ReaPlugs REAPER フリーのエフェクト集。ver0.999が無料でおなじみのDAW、REAPERに付属しているプラグインのVST版。スペクトル見ながらEQの調整ができるReaFIRをよく使ってます。@るぅなん the fish fillets digitalfishphones.com エフェクト集。コンプレッサのBLOCKFISH、ディエッサのSPITFISH、ノイズゲートのFLOORFISHの3つが入っている。BLOCKFISHはシンプルで使いやすくていいですね@村瀬 テンプレ 名前 リンク等 概要
https://w.atwiki.jp/yonetti/pages/15.html
gfortranでDLL作成 gfortran --shared -o hoge.dll hoge.f90 でDLL作成 ちなみにDLLやEXEのチェックに Dependency Viewer http //homepage3.nifty.com/super-dacho/ というツールある subroutine plus(a,b,c) double precision,intent(in) a,b double precision,intent(out) c c=a+b end subroutine plus Rでplus.dllを使用したい場合 注意点:subroutineであること 引数の型は強制的に変換する事 dyn.load("plus.dll") plus - function(a,b){ .Fortran("plus", arg1=as.double(a), arg2=as.double(b), arg3=double(1) ) } 引数が行列の時は arg1=matrix(as.integer(a),nrow=2,ncol=2) 戻り値が行列の時は、 arg3=matrix(double(4),nrow=2,ncol=2) とでもする
https://w.atwiki.jp/jfactory/pages/26.html
DLLをいぢって見る DLLが見つからないときマネージアプリから、マネージDLLとアンマネージDLLを呼んでみる マネージアプリからマネージDLL(内部でアンマネージDLL呼んでいる)を呼んでみる DLLの動的リンク DLLが見つからないとき 結局、マネージDLL不在チェックの方法がない(今のところ見つけられない)ので、アンマネージDLLだけをLoadLibraryで明示的リンクしてエラーチェックしても仕方がないような気がします。 (2008.09 マネージDLLの動的リンクを見つけました こちら) マネージアプリから、マネージDLLとアンマネージDLLを呼んでみる マネージDLLは、プロジェクトプロパティで参照設定しておき、using namespace ...で呼べるようにしています。アンマネージDLLは、インポートライブラリを使用して、暗黙的リンクで使用しています。 マネージDLL(ManagedDLL.dll)が見つからないときは、以下のダイアログが出ます。なんのエラーが発生したのか不明な、意味のないダイアログです。 アンマネージDLL(UnmanagedDLL.dll)が見つからないときは、以下のダイアログが出ます。しかも、古いウィンドウ形式のダイアログが(笑 どちらも見つからないときは、アンマネージDLLのダイアログが出ます。 Test.cpp using namespace System; using namespace ManagedDLL; #include "UnmanagedDLL.h" int main(array System String ^ ^args) { Console WriteLine("Manamged Add(1,2) = "+ManagedDLL Lib Add(1,2) ); Console WriteLine("Unmanaged Sub(1,2) = "+ Sub(1,2) ); Console ReadLine(); return 0; } ManagedDLL.h #pragma once namespace ManagedDLL { public ref class Lib { public static int Add(int a, int b) { return a+b; } }; } ManagedDLL.cpp #include "ManagedDLL.h" #ifndef __UnmanagedDLL_h #define __UnmanagedDLL_h UnmanagedDLL.h #ifdef DLL_EXPORTS #define _EXPORT __declspec(dllexport) #else #define _EXPORT __declspec(dllimport) #endif #ifdef__cplusplus extern "C" { #endif _EXPORT int __stdcall Sub(int a, int b); #ifdef__cplusplus } #endif #endif // #ifndef __UnmanagedDLL_h UnmanagedDLL.cpp #include "windows.h" #define DLL_EXPORTS #include "UnmanagedDLL.h" BOOL APIENTRY DllMain(HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { return TRUE; } _EXPORT int __stdcall Sub(int a, int b) { return a - b; } マネージアプリからマネージDLL(内部でアンマネージDLL呼んでいる)を呼んでみる マネージDLLは、プロジェクトプロパティで参照設定しておき、using namespace ...で呼べるようにしています。マネージDLLから呼んでいるアンマネージDLLは、インポートライブラリを使用して、暗黙的リンクで使用しています。 このパターンは、既存のライブラリをマネージコードで(特にC#/VBで)使用するための、もっとも多いパターンではないかと思われます。いまだにVC6のDLLしか用意されていないものも多数あり、それらを使用するためのラッパーとしての位置付けです。 マネージDLL(ManagedDLL.dll)が見つからないときは、以下のダイアログが出ます。なんのエラーが発生したのか不明な、意味のないダイアログです。アンマネージDLL(UnmanagedDLL.dll)が見つからないときも、同じダイアログが出ます。 Test.cpp using namespace System; using namespace ManagedDLL; int main(array System String ^ ^args) { Console WriteLine("Manamged Add(3,1) = " + ManagedDLL Lib Add(3,1) ); Console WriteLine("Manamged Sub(3,1) = " + ManagedDLL Lib Sub(3,1) ); Console ReadLine(); return 0; } ManagedDLL.h #pragma once #include "UnmanagedDLL.h" namespace ManagedDLL { public ref class Lib { public static int Add(int a, int b) { return a+b; } public static int Sub(int a, int b) { return Sub(a,b); } }; } ManagedDLL.cpp #include "ManagedDLL.h" UnmanagedDLL.h #ifdef DLL_EXPORTS #define _EXPORT __declspec(dllexport) #else #define _EXPORT __declspec(dllimport) #endif #ifdef__cplusplus extern "C" { #endif _EXPORT int __stdcall Sub(int a, int b); #ifdef__cplusplus } #endif #endif // #ifndef __UnmanagedDLL_h UnmanagedDLL.cpp #include "windows.h" #define DLL_EXPORTS #include "UnmanagedDLL.h" BOOL APIENTRY DllMain(HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { return TRUE; } _EXPORT int __stdcall Sub(int a, int b) { return a - b; }
https://w.atwiki.jp/scclassdoc/pages/20.html
アセンブリと Dll の名前 アセンブリは、配置とマネージ コード アプリケーションの id の単位です。 アセンブリは、1 つまたは複数のファイルにまたがることができます、通常このアセンブリは、DLL と一対一をマップします。 そのため、このセクションでは、のみ DLL の名前付け規則、その後、アセンブリの名前付け規則にマップできますがについて説明します。 ✓ DO System.Data などの機能の大きなチャンクを示す アセンブリDLL の名前を選択します。 アセンブリと DLL の名前、名前空間の名前に対応する必要はありませんが、アセンブリの名前を付けるときは、名前空間の名前を以下にすることができます。 適切な経験則では、アセンブリに含まれるアセンブリの共通のプレフィックスに基づいた DLL の名前です。 たとえば、2 つの名前空間を持つアセンブリ MyCompany.MyTechnology.FirstFeature と MyCompany.MyTechnology.SecondFeature, を呼び出す MyCompany.MyTechnology.dllします。 ✓ CONSIDER DLL を次のパターンに従って名前付けることを検討してください。 Company . Component .dll ここで Component にはピリオドで区切られた 1 以上の句が含まれます。 例 Litware.Controls.dll。
https://w.atwiki.jp/ooooasys/pages/18.html
fmlbalc1.dll 全文書共通の関数ライブラリが含まれたdll int xoas_cfn_globalalloc(DWORD dwBytes, HGLOBAL hMem, WORD uFlags) 処理 内部でGlobalAllocを呼んでいるだけ uFlagsはmovzxで32bitに拡張される 戻り値 型はWORDかも知れない 正常 2 異常 0 int xoas_cfn_globalfree(HGLOBAL hMem) 処理 GlobalFreeを呼んでいるだけ 戻り値 型はWORDかも知れない 正常 2 異常 0 int xoas_cfn_gloallock(HGLOBAL hMem) 処理 内部でGlobalLockを呼んでいるだけ 戻り値 GlobalLockの戻り値と同じ int xoas_cfn_globalunlock(HGLOBAL hMem) 処理 内部でGlobalUnlockを呼んでいるだけ 戻り値 GlobalUnlockの戻り値と同じ int xoas_cfn_globalrealloc(DWORD dwBytes, HGLOBAL hMem, int flags) 処理 xoas_cfn_globalallocのrealloc版 戻り値 正常 2 異常 0 int xoas_cfn_writefile(char* funcname) 処理 Tickのカウント、時間、処理時間、関数名?などをファイルに書き込んでいる デバッグ用と思われる。 戻り値 エラー(file内static変数hFileがない) 1 正常 0 int __stdcall xoas_cfn_writefile2(char *funcname,DWORD NumberOfBytesWritten) 処理 xoas_cfn_writefileの変形と思われる。NumberOfBytesWrittenが追加されている int __stdcall xoas_cfn_loadmodule(int,int,char *,int) 処理 中でLoadLibraryを呼んでいるUnixでいうdlopenみたいなもの
https://w.atwiki.jp/kitkat3/pages/85.html
VSTプラグイン集 Tobybearプロダクション DTM関連でつくったもの
https://w.atwiki.jp/abwiki/pages/647.html
概要 コンパイルしたDLLプログラムがWin32/Heurと認識される。 原因 誤認識だと思われます。 AVGには内部にヒューリスティックエンジンが搭載されており、 VisualC++などで作成されたDLLと異なる形式のDLLがABによって作成 されるために怪しいと判定され検知されるようです。 Win32/Heurは現存するウイルス種別の定義ではなく内部の分析エンジンの警告名です。 対処法 AVGおぷしょんの除外を適用するか、VisualC++などでDLLを作成する。